class Solution:
def romanToInt(self, s: str) -> int:
l = {"I" : 1, "V" :5, "X" : 10, "L" : 50, "C": 100, "D": 500, "M": 1000}
ans = 0
flag = 0
for i in range(len(s) - 1, 0, -1):
if flag == 1:
flag = 0
continue
if l[s[i]] > l[s[i-1]]:
flag = 1
ans+= l[s[i]] - l[s[i-1]]
else:
ans += l[s[i]]
if flag == 0:
ans+= l[s[0]]
return ans
409. Longest Palindrome | 1574A - Regular Bracket Sequences |
1574B - Combinatorics Homework | 1567A - Domino Disaster |
1593A - Elections | 1607A - Linear Keyboard |
EQUALCOIN Equal Coins | XOREQN Xor Equation |
MAKEPAL Weird Palindrome Making | HILLSEQ Hill Sequence |
MAXBRIDGE Maximise the bridges | WLDRPL Wildcard Replacement |
1221. Split a String in Balanced Strings | 1002. Find Common Characters |
1602A - Two Subsequences | 1555A - PizzaForces |
1607B - Odd Grasshopper | 1084A - The Fair Nut and Elevator |
1440B - Sum of Medians | 1032A - Kitchen Utensils |
1501B - Napoleon Cake | 1584B - Coloring Rectangles |
1562B - Scenes From a Memory | 1521A - Nastia and Nearly Good Numbers |
208. Implement Trie | 1605B - Reverse Sort |
1607C - Minimum Extraction | 1604B - XOR Specia-LIS-t |
1606B - Update Files | 1598B - Groups |